package com.zh.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zh.domain.dto.milestone.AddMileStoneRequest;
import com.zh.domain.dto.milestone.UpdateMileStoneRequest;
import com.zh.domain.entity.Milestone;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zh.domain.vo.milestone.MileStoneVo;
import com.zh.domain.vo.task.TaskCountVo;

import java.util.List;

/**
* @author Administrator
* @description 针对表【milestones(里程碑表)】的数据库操作Service
* @createDate 2025-02-09 16:24:10
*/
public interface MilestoneService extends IService<Milestone> {

    Boolean add(AddMileStoneRequest addMileStoneRequest);

    Boolean updateMileStone(UpdateMileStoneRequest updateMileStoneRequest);

    Boolean updateMileStone(Integer userId,UpdateMileStoneRequest updateMileStoneRequest);

    /**
     * 根据项目id查询里程碑
     * @param proId
     * @return
     */
    List<MileStoneVo> listByProId(Integer proId);

    MileStoneVo getMileStoneById(Integer id);

    void updateProcessById(Integer mileId);

    TaskCountVo getTaskCount(Integer mileId);
}
